package cn.hill4j.tool.spring.ext.iop.jdkproxy;

import java.lang.reflect.Method;

/**
  * ClassName: IopMethodInvokerHandler
  * Description: jdk动态代理iopClient方法执行类型
  * @author hillchen
  * Date: 2023/8/12
  * @version: 1.0
  */
public interface IopMethodInvokerHandler {
    /**
     * @author hillchen
     * Description: 执行代理方法
     * Date: 2023/8/12 23:15
     * @param proxy 代理类
     * @param method 需要执行的代理方法
     * @param args 方法所需参数
     * @return Object
     * @throws Throwable 执行异常
     **/
    Object invoke(Object proxy, Method method, Object[] args)
            throws Throwable;
}
